namespace Apps.Models
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    using System.Data.Entity.Spatial;

    [Table("PUB_OF_NODE")]
    public partial class PUB_OF_NODE
    {
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
        public PUB_OF_NODE()
        {
            PUB_DEV_CAMERA = new HashSet<PUB_DEV_CAMERA>();
            PUB_DEVICE = new HashSet<PUB_DEVICE>();          
        }

        [Key]
        [StringLength(40)]
        public string NODE_ID { get; set; }

        [Required]
        [StringLength(40)]
        public string TACHE_ID { get; set; }

        [Required]
        [StringLength(50)]
        public string NODE_NAME { get; set; }

        public bool ENABLED { get; set; }

        public Nullable<int> POSTION { get; set; }

        public int? NODE_CODE { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PUB_DEV_CAMERA> PUB_DEV_CAMERA { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PUB_DEVICE> PUB_DEVICE { get; set; }

        public virtual PUB_OF_TACHE PUB_OF_TACHE { get; set; }
    }
}
